package com.bigstar.lolkor;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.view.WindowManager;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.TextView;

import com.google.ads.AdRequest;
import com.google.ads.AdView;

public class SummonerSpells extends Activity{
	public static final String[] spells_name_en = new String[] {
		"Exhaust","Garrison","Ghost","Heal",
		"Revive","Smite","Surge","Teleport",
		"Cleanse","Clarity","Ignite","Promote",
		"Clairvoyance","Flash","Barrier"
	};
	public static final String[] spells_name_kor = new String[] {
		"탈진","주둔","유체화","회복",
		"부활","강타","고양","순간이동",
		"정화","총명","점화","진급",
		"천리안","점멸","방어막"
	};
	public static final String[] spells_text = new String[] {
		"소환사 레벨 : 1\r\n쿨다운 : 210초\r\n사정거리 : 500\r\n[클래식, 도미니언] 적 챔피언의 이동 속도를 40%, 공격력을 70%, 스킬 및 아이템의 피해를 2.5초 동안 35% 감소시킵니다.",
		"소환사 레벨 : 1\r\n쿨다운 : 210초\r\n사정거리 : 475\r\n[도미니언] 아군 포탑에 사용 시 8초 동안 체력 재생과 공격 속도를 크게 높여줍니다. 적 포탑에 사용 시 8초 동안 공격력을 80%만큼 낮춥니다.",
		"소환사 레벨 : 1\r\n쿨다운 : 210초\r\n사정거리 : 자신\r\n[클래식, 도미니언] 챔피언이 다른 유닛과 부딪히지 않으며, 10초 동안 이동 속도가 27% 증가합니다.",
		"소환사 레벨 : 1\r\n쿨다운 : 270초\r\n사정거리 : 600\r\n[클래식, 도미니언] 챔피언의 체력이 100~250 (챔피언 레벨에 따라 변동)만큼, 근처 아군의 체력이 해당 수치의 50%만큼 회복됩니다.",
		"소환사 레벨 : 1\r\n쿨다운 : 540초\r\n사정거리 : 자신\r\n[클래식, 도미니언] 챔피언이 즉시 소환 장소에서 부활한다. 부활한 챔피언은 이동 속도가 125% 증가하고 12초 동안 서서히 느려져 보통 이동 속도로 돌아온다.",
		"소환사 레벨 : 1\r\n쿨다운 : 75초\r\n사정거리 : 800\r\n[클래식, 도미니언] 적 미니언이나 소환수에게 445~870 (챔피언 레벨에 따라 변동)의 고정 피해를 입힙니다.",
		"소환사 레벨 : 1\r\n쿨다운 : 180초\r\n사정거리 : 자신\r\n[클래식, 도미니언] 챔피언을 강화시켜 12초간 공격 속도가 35%, 주문력이 10~78(챔피언 레벨에 따라 변동) 증가합니다.",
		"소환사 레벨 : 1\r\n쿨다운 : 300초\r\n사정거리 : 글로벌\r\n[클래식] 4초 뒤에 챔피언이 지정한 아군 미니언, 포탑 혹은 와드로 순간 이동합니다.",
		"소환사 레벨 : 2\r\n쿨다운 : 150초\r\n사정거리 : 자신\r\n[클래식, 도미니언] 자신에게 걸린 메즈 계열과 침묵, 실명 디버프와 탈진(Exhaust), 점화(Ignite)를 해제하고 3초 동안 스턴, 슬로우, 타운트, 공포, 스네어 등의 이동 불가 효과가 65% 감소한다. 대미지를 입히는 디버프나 능력치 디버프는 해제되지 않습니다.",
		"소환사 레벨 : 6\r\n쿨다운 : 180초\r\n사정거리 : 600\r\n[클래식, 도미니언] 챔피언 마나가 190~700 (챔피언 레벨에 따라 변동) 만큼,근처 아군의 마나가 해당 수치의 50%만큼 회복됩니다.",
		"소환사 레벨 : 7\r\n쿨다운 : 180초\r\n사정거리 : 550\r\n[클래식, 도미니언] 적 유닛을 불태워 5초 동안 70~410의 고정 피해(챔피언 레벨에 따라 변동) 와 더블어 치료 효과를 감소시킵니다.",
		"소환사 레벨 : 8\r\n쿨다운 : 180초\r\n사정거리 : 550\r\n[클래식, 도미니언] 가장 가까운 공성 미니언을 진급(사정거리, 체력, 방어, 마법 방어력 증가)시킵니다. 시전자는 이 미니언이 적을 죽일 때마다 추가로 골드를 받습니다.",
		"소환사 레벨 : 10\r\n쿨다운 : 70초\r\n사정거리 : 글로벌\r\n[클래식, 도미니언] 4초 동안 선택한 지역의 시야를 밝힌다.",
		"소환사 레벨 : 12\r\n쿨다운 : 265초\r\n사정거리 : 400\r\n[클래식, 도미니언] 챔피언이 커서 위치(최대 이동거리 : 400)로 순간 이동한다.",
		"소환사 레벨 : 1\r\n쿨다운 : 125초\r\n사정거리 : 자신\r\n[증명의 전장] 4초 동안 자신을 방어막으로 감싸 125~550(챔피언 레벨에 따라 변동)만큼 데미지를 흡수합니다."
	};
	
    @Override
    protected void onResume() {
        ChampionData.load(this);
        ItemData.load(this);
        Rune.load(this);
    	super.onResume();
    }

    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                    WindowManager.LayoutParams.FLAG_FULLSCREEN);
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 
        ChampionData.load(this);
        ItemData.load(this);
        Rune.load(this);
        setContentView(R.layout.summoner_spells);
        AdView adview = (AdView)findViewById(R.id.adView);
        AdRequest re = new AdRequest(); 
        adview.loadAd(re);
        GridView gridview = (GridView) findViewById(R.id.spells_grid);
        gridview.setAdapter(new ListAdapter());
        
        gridview.setOnItemClickListener(new OnItemClickListener(){
        	public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
        		ImageView iv = new ImageView(SummonerSpells.this);
        		iv.setImageResource(R.drawable.spellss_00+position);
        		new AlertDialog.Builder(SummonerSpells.this)
        		.setIcon(R.drawable.sspells_00+position)
        		.setTitle(spells_name_en[position]+"("+spells_name_kor[position]+")")
        		.setView(iv)
        		.setMessage(spells_text[position])

        		.setPositiveButton("닫기", new DialogInterface.OnClickListener() {
        			public void onClick(DialogInterface dialog, int whichButton) {
        			}
        		})
        		.create().show();
        	}
        });
    }
	
	class ListAdapter extends BaseAdapter {
		 
		 public ListAdapter () {
		 }
		 
		 public int getCount() {
			 return spells_name_en.length;
		 }
		 
		 public Object getItem(int position) {
		  return null;
		 }
		 
		 public long getItemId(int position){
		  return 0;
		 }
		 
		 // Create a New ImageView for each item referenced by the Adapter
		 public View getView(int position, View convertView, ViewGroup parent){
			 View v;
			 LayoutInflater li = getLayoutInflater(); 
			 v = li.inflate(R.layout.summoner_spells_row, null); 
			 TextView tv = (TextView)v.findViewById(R.id.s_spells_name); 
			 tv.setText(spells_name_en[position]);  
			 
			 tv = (TextView)v.findViewById(R.id.s_spells_name_kor); 
			 tv.setText(spells_name_kor[position]); 
			 
			 ImageView iv = (ImageView)v.findViewById(R.id.s_spells_img); 
			 iv.setScaleType(ImageView.ScaleType.CENTER_CROP);
			 iv.setImageResource(R.drawable.sspells_00+position); 

		  
			 return v;
		 }
	}
}
